package org.domain.sigepac.repository.impl;

import java.util.List;

import org.domain.sigepac.Entity.GrupoPsicogenese;
import org.domain.sigepac.Entity.Psicogenese;
import org.domain.sigepac.repository.RepositorioGenerico;
import org.domain.sigepac.repository.RepositorioPsicogenese;
import org.hibernate.Criteria;
import org.hibernate.criterion.Order;
import org.hibernate.criterion.Restrictions;
import org.jboss.seam.annotations.AutoCreate;
import org.jboss.seam.annotations.Name;



/**
 * @author bruno.canto
 */
@Name("repositorioPsicogenese")
@AutoCreate
public class RepositorioPsicogeneseImpl extends RepositorioGenerico<Psicogenese>
    implements RepositorioPsicogenese {

	public List<Psicogenese> porOrdemCrescente(GrupoPsicogenese grupo) {
		Criteria criteria=getSession().createCriteria(Psicogenese.class);
	    criteria.add(Restrictions.eq("grupo", grupo));
	    criteria.addOrder(Order.asc("ordem"));
	    return criteria.list();
		
	}

	public List<Psicogenese> porOrdemDecrescente(GrupoPsicogenese grupo) {
		Criteria criteria=getSession().createCriteria(Psicogenese.class);
	    criteria.add(Restrictions.eq("grupo", grupo));
	    criteria.addOrder(Order.desc("ordem"));
	    return criteria.list();
	}
	
	public List<Psicogenese> porCategoria(GrupoPsicogenese grupoPsicogenese) {
		return listarPorAtributo("grupo", grupoPsicogenese);
	}

}
